package unamur.iodass.forms;

import java.util.HashMap;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.apache.log4j.Logger;
import unamur.iodass.beans.Client;
import unamur.iodass.servlets.ChoixLivre;

/**
 * Form pour la servlet ChoixLivre
 * 
 * @author Cherchem, Marchal
 *
 */
 
public final class ChoixLivreForm {    
 
	private static final Logger logger = Logger.getLogger(ChoixLivre.class);
	
	public static final String CHAMP_RADIO         = "chooseBook";
	
	public static final String CHAMP_NOM         	= "nom";
	public static final String CHAMP_PRENOM         = "prenom";
	public static final String CHAMP_RUE         	= "rue";
	public static final String CHAMP_NUMERO         = "numero";
	public static final String CHAMP_BOITE_POSTALE 	= "boitePostale";
	public static final String CHAMP_CODE_POSTAL  	= "codePostal";
	public static final String CHAMP_VILLE         	= "ville";
	public static final String CHAMP_PAYS         	= "pays";
	

 
    public long retrieveRadioValue(HttpServletRequest request) {
    	String isbn = getValeurChamp(request, CHAMP_RADIO);
    	
    	
    	logger.info(isbn);
    	
    	return Long.valueOf(isbn);
    }
    
	public Client createClient(HttpServletRequest request) {

		
		String nom = getValeurChamp(request, CHAMP_NOM);
		String prenom = getValeurChamp(request, CHAMP_PRENOM);
		String rue = getValeurChamp(request, CHAMP_RUE);
		String numero = getValeurChamp(request, CHAMP_NUMERO);
		String boitePostale = getValeurChamp(request, CHAMP_BOITE_POSTALE);
		String codePostal = getValeurChamp(request, CHAMP_CODE_POSTAL);
		String ville = getValeurChamp(request, CHAMP_VILLE);
		String pays = getValeurChamp(request, CHAMP_PAYS);
		
		Client cli = new Client(prenom, nom, rue, numero, boitePostale, codePostal, ville, pays);
		
		return cli;
		
	}

    /**
     * Getter d'un paramètre de la requête.
     * 
     * @param request
     * @param nomChamp
     *            le nom de champ que l'on veut récuperer
     * 
     * @return la chaine de charactère représentant le paramètre demandé
     */
    private static String getValeurChamp( HttpServletRequest request, String nomChamp ) {
        String valeur = request.getParameter( nomChamp );
        if ( valeur == null || valeur.trim().length() == 0 ) {
            return null;
        } else {
            return valeur.trim();
        }
    }
}